Signed-off by: Dan Magenheimer <dan.magenheimer@hp.com>
# Makefile for Xen components
#
-obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o xenconsole.o
+obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o xenconsole.o xen_ksyms.o
--- /dev/null
+/*
+ * Architecture-specific kernel symbols
+ *
+ * Don't put any exports here unless it's defined in an assembler file.
+ * All other exports should be put directly after the definition.
+ */
+
+#include <linux/config.h>
+#include <linux/module.h>
+
+extern int is_running_on_xen(void);
+EXPORT_SYMBOL(is_running_on_xen);
(p7) mov cr.iva=r10
br.ret.sptk.many rp;;
END(xen_init)
+
+GLOBAL_ENTRY(is_running_on_xen)
+ movl r9=running_on_xen;;
+ ld4 r8=[r9];;
+ br.ret.sptk.many rp;;
+END(is_running_on_xen)
#endif
#ifndef __ASSEMBLY__
+#ifdef MODULE
+extern int is_running_on_xen(void);
+#define running_on_xen (is_running_on_xen())
+#else
extern int running_on_xen;
+#endif
#define XEN_HYPER_SSM_I asm("break 0x7");
#define XEN_HYPER_GET_IVR asm("break 0x8");